2
תגובות
תווים מיוחדים
פתח
roice
,
אהלן,
כשאני דוחף דאטא ל DB אני משתמש ב mysql_real_escape_string
למשל:
כשאני שולף את הדאטא מה DB ורוצה להציג אותו יש לי בעיה
אם אני אשלוף אותו באמצעות stripslashes, למשל:
אזי אני לא אוכל להציג את הטקסט עם הסימנים המיוחדים ולא אוכל להציג תוכן שהוא XML (למשל)
אם אני אשתמש ב htmlspecialchars, למשל:
אזי כן יופיע לי התוכן XML אבל בכל מקום שיש בטקסט גרש או גרשיים יופי לי סלאש ("/)
מה עושים כדי להציג את הטקסט בצורה תיקנית?
תודה מראש,
רועי.
כשאני דוחף דאטא ל DB אני משתמש ב mysql_real_escape_string
למשל:
$text = mysql_real_escape_string ($_POST['text']);
כשאני שולף את הדאטא מה DB ורוצה להציג אותו יש לי בעיה
אם אני אשלוף אותו באמצעות stripslashes, למשל:
$text = stripslashes ($index['text']);
אזי אני לא אוכל להציג את הטקסט עם הסימנים המיוחדים ולא אוכל להציג תוכן שהוא XML (למשל)
אם אני אשתמש ב htmlspecialchars, למשל:
$text = htmlspecialchars ($index['text']);
אזי כן יופיע לי התוכן XML אבל בכל מקום שיש בטקסט גרש או גרשיים יופי לי סלאש ("/)
מה עושים כדי להציג את הטקסט בצורה תיקנית?
תודה מראש,
רועי.
2 תשובות
משתמשים ב htmlSpecialChars
הבעיה אצלך היא שיש איפשהו פעמיים קריאה ל mysql_real_escape_string
יכול להיות שלא אתה עושה את זה, אלה האחסון עושה את זה. תנסה שורה אחת לפני ההכנסה עצמה (mysql_query)
להדפיס את התוכן של השאילת ותראה אם מופיעים שם סלאשים כבר פעמיים.
יכול להיות שהם נוספים במקום אחר. אבל htmlSpecialChars עצמה לא מוסיפה סלאשים. מישהו אחר מוסיף אותם והיא רק מציגה אותם.